#!/usr/bin/env python3
"""
非参数统计分析 MCP 服务器启动脚本
"""

import sys
import subprocess
import os

def check_dependencies():
    """检查依赖包是否已安装"""
    required_packages = ['numpy', 'scipy', 'statsmodels', 'mcp']
    missing_packages = []
    
    for package in required_packages:
        try:
            __import__(package)
            print(f"✓ {package} 已安装")
        except ImportError:
            missing_packages.append(package)
            print(f"✗ {package} 未安装")
    
    if missing_packages:
        print(f"\n缺少依赖包: {', '.join(missing_packages)}")
        print("请运行以下命令安装依赖:")
        print("pip install -r requirements.txt")
        return False
    
    return True

def start_server():
    """启动MCP服务器"""
    print("=== 非参数统计分析 MCP 服务器 ===")
    print("正在检查依赖包...")
    
    if not check_dependencies():
        sys.exit(1)
    
    print("\n依赖检查完成，启动服务器...")
    print("服务器功能:")
    print("- 单样本统计分析")
    print("- 双样本比较分析")
    print("- 多样本比较分析")
    print("- 描述性统计计算")
    print("- 随机性检验")
    print("\n按 Ctrl+C 停止服务器")
    print("-" * 50)
    
    try:
        # 启动主服务器
        from server import main
        import asyncio
        asyncio.run(main())
    except KeyboardInterrupt:
        print("\n服务器已停止")
    except Exception as e:
        print(f"\n服务器启动失败: {e}")
        print("\n故障排除建议:")
        print("1. 确保所有依赖包已正确安装")
        print("2. 检查Python版本 (需要3.7+)")
        print("3. 查看详细错误信息")

if __name__ == "__main__":
    start_server()